package com.vast.admin.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.vast.system.entity.SuperEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;

@ApiModel(value="com.vast.admin.entity.ContractDetail")
@Data
@TableName(value = "contract_detail")
public class ContractDetail extends SuperEntity implements Serializable {
//     @TableId(value = "id", type = IdType.AUTO)
//    @ApiModelProperty(value="null")
//    private Long id;

    @TableField(value = "contract_id")
    @ApiModelProperty(value="合同主流程ID")
    private Long contractId;

    /**
     * 上上签合同id
     */
    @TableField(value = "bestsign_contract_id")
    @ApiModelProperty(value="上上签合同id")
    private String bestsignContractId;

    /**
     * 合同模板
     */
    @TableField(value = "templete_id")
    @ApiModelProperty(value="合同模板")
    private Long templeteId;

    /**
     * 合同模板名称
     */
    @TableField(exist = false)
    @ApiModelProperty(value="合同模板名称")
    private String templateName;

    /**
     * 合同模板记录
     */
    @TableField(value = "templete_record_id")
    @ApiModelProperty(value="合同模板记录")
    private Long templeteRecordId;

    /**
     * 合同状态（0草稿1合同文件已生成 2上上签签署链接已推送3客户签署完成）
     */
    @TableField(value = "status")
    @ApiModelProperty(value="合同状态（0草稿1合同文件已生成 2上上签签署链接已推送3客户签署完成9作废）")
    private Integer status;

    /**
     * 甲方
     */
    @TableField(value = "party_a")
    @ApiModelProperty(value="企业方/抵押公司")
    private String partyA;

    /**
     * 乙方
     */
    @TableField(value = "party_b")
    @ApiModelProperty(value="客户方(可能为多人 英文逗号拼接id)")
    private String partyB;

    /**
     * 丙方
     */
    @TableField(value = "party_c")
    @ApiModelProperty(value="丙方(可能为多人 英文逗号拼接id)")
    private String partyC;

    /**
     * 合同所属公司
     */
    @TableField(value = "client_id")
    @ApiModelProperty(value="合同所属公司")
    private Long clientId;

    /**
     * 上上签合同签署链接
     */
    @TableField(value = "bestsign_contract_url")
    @ApiModelProperty(value="上上签合同签署链接")
    private String bestsignContractUrl;

    /**
     * 合同采集信息 json
     */
    @TableField(value = "contract_param")
    @ApiModelProperty(value="合同采集信息 json")
    private String contractParam;

    @TableField("form_items")
    private String formItems;

    /**
     * 合同pdf文件路径（合同签署结束后上传oss）
     */
    @TableField(value = "pdf_path")
    @ApiModelProperty(value="合同pdf文件路径（合同签署结束后上传oss）")
    private String pdfPath;

    @TableField(value = "pdf_page")
    @ApiModelProperty(value="pdf文件页数")
    private Integer pdfPage;

//    /**
//     * 创建人
//     */
//    @TableField(value = "create_by")
//    @ApiModelProperty(value="创建人")
//    private Long createBy;
//
//    /**
//     * 创建时间
//     */
//    @TableField(value = "create_time")
//    @ApiModelProperty(value="创建时间")
//    private Date createTime;
//
//    /**
//     * 修改人
//     */
//    @TableField(value = "update_by")
//    @ApiModelProperty(value="修改人")
//    private Long updateBy;
//
//    /**
//     * 修改时间
//     */
//    @TableField(value = "update_time")
//    @ApiModelProperty(value="修改时间")
//    private Date updateTime;


    public static final String COL_CONTRACT_ID = "contract_id";

    public static final String COL_BESTSIGN_CONTRACT_ID = "bestsign_contract_id";

    public static final String COL_TEMPLETE_ID = "templete_id";

    public static final String COL_TEMPLETE_RECORD_ID = "templete_record_id";

    public static final String COL_STATUS = "status";

    public static final String COL_PARTY_A = "party_a";

    public static final String COL_PARTY_B = "party_b";

    public static final String COL_PARTY_C = "party_c";

    public static final String COL_CLIENT_ID = "client_id";

    public static final String COL_BESTSIGN_CONTRACT_URL = "bestsign_contract_url";

    public static final String COL_CONTRACT_SIGNED_BY = "contract_signed_by";

    public static final String COL_CONTRACT_PARAM = "contract_param";

    public static final String COL_PDF_PATH = "pdf_path";

    public static final String COL_CREATE_BY = "create_by";

    public static final String COL_CREATE_TIME = "create_time";

    public static final String COL_UPDATE_BY = "update_by";

    public static final String COL_UPDATE_TIME = "update_time";
}